package com.lxmes.base.mapper;

import java.util.List;
import com.lxmes.base.domain.JcWarehouseinfoKuwei;
import com.lxmes.common.annotation.DataScope;

/**
 * 库位管理Mapper接口
 * 
 * @author 张志煜
 * @date 2022-11-17
 */
public interface JcWarehouseinfoKuweiMapper 
{
    /**
     * 查询库位管理
     * 
     * @param id 库位管理主键
     * @return 库位管理
     */
    public JcWarehouseinfoKuwei selectJcWarehouseinfoKuweiById(Long id);
    //根据库位简码获取仓库、库区、库位
    public JcWarehouseinfoKuwei selectJcWarehouseinfoKuweiByKuweiJmCode(String kuweiJmCode);
    //根据库位获取仓库、库区、库位
    public JcWarehouseinfoKuwei selectJcWarehouseinfoKuweiByKuweiCode(String kuweiCode);
    //查询中心库位
    public JcWarehouseinfoKuwei selectJcWarehouseinfoKuweiCenter(String tenantId);
    //默认入库库位
    public JcWarehouseinfoKuwei selectJcWarehouseinfoKuweiRkDefault(JcWarehouseinfoKuwei jcWarehouseinfoKuwei);
    //校验库位、库位简码不重复
    public int selectJcWarehouseinfoKuweiVerif(JcWarehouseinfoKuwei jcWarehouseinfoKuwei);
    //大屏统计
    public int selectJcWarehouseinfoKuweiDpBb(String kuweiType);

    /**
     * 查询库位管理列表
     * 
     * @param jcWarehouseinfoKuwei 库位管理
     * @return 库位管理集合
     */
    @DataScope(deptAlias = "kw", userAlias = "kw")
    public List<JcWarehouseinfoKuwei> selectJcWarehouseinfoKuweiList(JcWarehouseinfoKuwei jcWarehouseinfoKuwei);

    //获取所有库区
    @DataScope(deptAlias = "kw", userAlias = "kw")
    public List<JcWarehouseinfoKuwei> selectJcWarehouseinfoKuQuList(JcWarehouseinfoKuwei jcWarehouseinfoKuwei);

    /**
     * 新增库位管理
     * 
     * @param jcWarehouseinfoKuwei 库位管理
     * @return 结果
     */
    public int insertJcWarehouseinfoKuwei(JcWarehouseinfoKuwei jcWarehouseinfoKuwei);

    /**
     * 修改库位管理
     * 
     * @param jcWarehouseinfoKuwei 库位管理
     * @return 结果
     */
    public int updateJcWarehouseinfoKuwei(JcWarehouseinfoKuwei jcWarehouseinfoKuwei);

    /**
     * 删除库位管理
     * 
     * @param id 库位管理主键
     * @return 结果
     */
    public int deleteJcWarehouseinfoKuweiById(Long id);

    /**
     * 批量删除库位管理
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteJcWarehouseinfoKuweiByIds(Long[] ids);
}
